<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      var arr = [1, 2, 3, 4, 1, 6, 5, 1, 3, 2, 6];
      var n_arr = new Array();
      //第一种  用一个新数组 取出旧数组的参数，放在新数组中对比，数据不存在就插入；
      for (var i = 0; i < arr.length; i++) {
        if (n_arr.indexOf(arr[i]) == -1) {
          n_arr.push(arr[i]);
        }
      }
      console.log(n_arr);
      //第二种 利用对象键名不能重复
      var obj = new Object();
      for (var i = 0; i < arr.length; i++) {
        obj[arr[i]] = arr[i];
      }
      console.log(obj);
      //第三种  set集合 ，集合中数据不重复
      //set不使用索引，而是使用键对数据排序。 set 中的元素按插入顺序是可迭代的，它不能包含任何重复的数据。换句话说， set中的每一项都必须是惟一的。
      var set = new Set();
      for (var i = 0; i < arr.length; i++) {
        set.add(arr[i]);
      }
      // 把集合转回数组；
      var arr_1 = Array.from(set);
      console.log(arr_1);
    </script>
  </body>
</html>
